/**
 * 
 */
package fr.gfi.agraf.service;

import java.util.List;

import fr.gfi.agraf.vue.bean.NotificationDTO;

/**
 * @author Fw
 * 
 */
public interface INotificationService {

	/**
	 * Pour un utilisateur, indique toutes ses notifications comme vues
	 */
	public void marqueesToutesNotifsVuesByUtilisateur(final Long idUtilisateur);

	/**
	 * renvoie la liste des notifications propre à l'utilisateur
	 */
	public List<NotificationDTO> getListeNotifsByUser(final Long idUtilisateur);

	/**
	 * Envoie une notification à tous les utililisateurs ayant comme profil
	 * celui passé en parametre
	 */
	public void envoyerNotificationToUtilisateurByProfil(final String contenuNotification, final Long idProfil);

	/**
	 * Envoie une notification à l'utilisateur spécifié en paramtre
	 */
	public void envoyerNotificationToUtilisateurById(final String contenuNotification,
			final Long idUtilisateur);

}
